#pragma once
#define USING_NETCAM 0
#define TEST_MODE 1
#define USING_ORB 1
#define THREAD_WAIT 100
#include "SIGNET/network.h"
#include <iostream>
#include <string>
#include "opencv2/core.hpp"
#include "opencv2/imgproc.hpp"
#include "opencv2/highgui.hpp"
#include <opencv2/video/video.hpp>
#include <opencv2/opencv.hpp>
#include "CAMERA/algroth.cpp"
#include "orb/orb.h"
#include <thread>
#include <ctime>
#include <unistd.h>
#include <chrono>
#include "SRC/parameter_reader.h"
//233


typedef tuple<Mat, Mat> seg_result;//seg���ӻ���combine���ӻ���
typedef tuple<vector< DMatch >, vector< DMatch >,vector<KeyPoint>, vector<KeyPoint>> orb_result;
typedef tuple<seg_result, orb_result> Frame;

bool input_argc(int* argc,char** argv);
void cap_loop(cv::VideoCapture cap, int fps_delay);
void orb_catch();
void Delay(int time);
void seg_the_pic(const string filename, bool compute_Md);

